package com.sbtr.business.calibration.service;

import com.sbtr.business.calibration.entity.CalibrationObjectDetection;
import com.sbtr.business.calibration.entity.CalibrationObjectDetectionImgBox;
import com.sbtr.common.PageDto;
import com.sbtr.open.calibration.dto.CalibrationImgDetectDto;
import com.sbtr.open.calibration.dto.CalibrationObjectDetectionDto;
import com.sbtr.open.calibration.dto.CalibrationSearchByDetailsDto;
import com.sbtr.open.classify.dto.ClassifyDto;
import org.springframework.web.bind.annotation.*;

import java.util.List;

public interface ICalibrationObjectDetectionService {

    //保存单个标签
    CalibrationObjectDetectionDto save(CalibrationObjectDetectionDto dto);

    //批量保存标签
    List<CalibrationObjectDetectionDto> batchSaveLabel(List<CalibrationObjectDetectionDto> items, Long picId);

    CalibrationObjectDetectionDto findById( Long id);

    List<CalibrationObjectDetectionDto> loadOnePicLabels(String picId);

    boolean deleteLable(CalibrationObjectDetectionDto dto) ;

//    @RequestMapping(value = "/deleteLable", method = RequestMethod.GET)
//    @ResponseBody
//    String deleteLable(@RequestParam("calibrationId") String calibrationId,@RequestParam("picId") String picId,@RequestParam("classifyId") String classifyId);

    //按照标签加载图片
    List<CalibrationImgDetectDto> queryPicByLabelId (String classifyId);

    //查询列表接口
    PageDto<CalibrationImgDetectDto> getImgDetectList(CalibrationSearchByDetailsDto dto);

    //统计当前任务下，已标注的标签数
    List<ClassifyDto> loadImgDetectCalibrationAllLabels(Long calibrationDetailsId);

    public String deleteLable(String calibrationId,String picId,String classifyId);

    CalibrationObjectDetectionImgBox createOrUpdateCalibrationObjectDetectionImgBox(CalibrationObjectDetection ob, List<CalibrationObjectDetection> list);
}
